Conversation
The restore step appended `-${{ inputs.extra_features }}` to the corpus
directory path, but the persist step did not, causing a path mismatch
that made restoring previously-saved corpora silently fail.
Signed-off-by: Alexander Droste <alex@spiraldb.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Signed-off-by: Alexander Droste <alexander.droste@protonmail.com>
The stale-pr-message said "open for 30 days" but days-before-pr-stale is set to 14. Signed-off-by: Alexander Droste <alex@spiraldb.com> Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> Signed-off-by: Alexander Droste <alexander.droste@protonmail.com>
The "Install Sweep" and "Timestamp Cache" steps reference an undeclared `inputs.timestamp` input, so they never execute. Remove the dead code. Signed-off-by: Alexander Droste <alex@spiraldb.com> Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> Signed-off-by: Alexander Droste <alexander.droste@protonmail.com>
bench.yml already uses `--bin` for the same build step. Using --package builds all targets in the crate, not just the benchmark binary. Signed-off-by: Alexander Droste <alex@spiraldb.com> Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> Signed-off-by: Alexander Droste <alexander.droste@protonmail.com>
- bench.yml commit-metadata: 120m → 10m (only uploads metadata) - docs.yml deploy: 120m → 10m (only downloads artifact and deploys) - stale.yml: add missing timeout-minutes: 10 Signed-off-by: Alexander Droste <alex@spiraldb.com> Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> Signed-off-by: Alexander Droste <alexander.droste@protonmail.com>
Polar Signals Profiling ResultsLatest Run
Previous Runs (2)
Powered by Polar Signals Cloud |
Merging this PR will not alter performance
Comparing Footnotes
|
Benchmarks: PolarSignals ProfilingVortex (geomean): 1.002x ➖ datafusion / vortex-file-compressed (1.002x ➖, 0↑ 0↓)
|
File Sizes: PolarSignals ProfilingNo file size changes detected. |
Benchmarks: TPC-H SF=1 on NVMEVerdict: No clear signal (environment too noisy confidence) datafusion / vortex-file-compressed (1.034x ➖, 0↑ 0↓)
datafusion / vortex-compact (1.034x ➖, 0↑ 0↓)
datafusion / parquet (1.011x ➖, 1↑ 1↓)
datafusion / arrow (1.028x ➖, 0↑ 1↓)
duckdb / vortex-file-compressed (1.014x ➖, 0↑ 0↓)
duckdb / vortex-compact (1.020x ➖, 0↑ 0↓)
duckdb / parquet (1.006x ➖, 2↑ 1↓)
duckdb / duckdb (1.004x ➖, 0↑ 0↓)
Full attributed analysis
|
File Sizes: TPC-H SF=1 on NVMENo file size changes detected. |
Benchmarks: FineWeb NVMeVerdict: No clear signal (low confidence) datafusion / vortex-file-compressed (0.965x ➖, 1↑ 0↓)
datafusion / vortex-compact (0.978x ➖, 0↑ 0↓)
datafusion / parquet (0.976x ➖, 0↑ 0↓)
duckdb / vortex-file-compressed (0.982x ➖, 2↑ 1↓)
duckdb / vortex-compact (0.980x ➖, 1↑ 0↓)
duckdb / parquet (0.969x ➖, 0↑ 0↓)
Full attributed analysis
|
File Sizes: FineWeb NVMeNo file size changes detected. |
Benchmarks: TPC-DS SF=1 on NVMEVerdict: No clear signal (low confidence) datafusion / vortex-file-compressed (1.007x ➖, 0↑ 2↓)
datafusion / vortex-compact (1.006x ➖, 0↑ 0↓)
datafusion / parquet (1.012x ➖, 0↑ 1↓)
duckdb / vortex-file-compressed (1.000x ➖, 2↑ 1↓)
duckdb / vortex-compact (1.002x ➖, 2↑ 0↓)
duckdb / parquet (1.008x ➖, 0↑ 2↓)
duckdb / duckdb (1.005x ➖, 2↑ 1↓)
Full attributed analysis
|
File Sizes: TPC-DS SF=1 on NVMENo file size changes detected. |
Benchmarks: TPC-H SF=10 on NVMEVerdict: No clear signal (low confidence) datafusion / vortex-file-compressed (1.129x ❌, 0↑ 20↓)
datafusion / vortex-compact (1.163x ❌, 0↑ 19↓)
datafusion / parquet (1.099x ➖, 0↑ 11↓)
datafusion / arrow (1.062x ➖, 0↑ 6↓)
duckdb / vortex-file-compressed (1.048x ➖, 0↑ 0↓)
duckdb / vortex-compact (1.023x ➖, 0↑ 0↓)
duckdb / parquet (1.040x ➖, 0↑ 0↓)
duckdb / duckdb (1.027x ➖, 0↑ 0↓)
Full attributed analysis
|
File Sizes: TPC-H SF=10 on NVMENo file size changes detected. |
Benchmarks: FineWeb S3Verdict: No clear signal (environment too noisy confidence) datafusion / vortex-file-compressed (1.034x ➖, 0↑ 1↓)
datafusion / vortex-compact (0.946x ➖, 0↑ 0↓)
datafusion / parquet (0.971x ➖, 0↑ 0↓)
duckdb / vortex-file-compressed (1.004x ➖, 0↑ 0↓)
duckdb / vortex-compact (0.960x ➖, 0↑ 0↓)
duckdb / parquet (0.970x ➖, 0↑ 0↓)
Full attributed analysis
|
Benchmarks: TPC-H SF=1 on S3Verdict: No clear signal (environment too noisy confidence) datafusion / vortex-file-compressed (0.843x ➖, 2↑ 0↓)
datafusion / vortex-compact (0.952x ➖, 0↑ 0↓)
datafusion / parquet (1.017x ➖, 0↑ 1↓)
duckdb / vortex-file-compressed (0.991x ➖, 0↑ 0↓)
duckdb / vortex-compact (1.000x ➖, 0↑ 0↓)
duckdb / parquet (1.027x ➖, 0↑ 1↓)
Full attributed analysis
|
Benchmarks: Statistical and Population GeneticsVerdict: No clear signal (low confidence) duckdb / vortex-file-compressed (0.981x ➖, 1↑ 0↓)
duckdb / vortex-compact (0.995x ➖, 0↑ 0↓)
duckdb / parquet (0.992x ➖, 0↑ 0↓)
Full attributed analysis
|
File Sizes: Statistical and Population GeneticsNo file size changes detected. |
Benchmarks: TPC-H SF=10 on S3Verdict: No clear signal (environment too noisy confidence) datafusion / vortex-file-compressed (0.869x ➖, 4↑ 0↓)
datafusion / vortex-compact (0.973x ➖, 1↑ 0↓)
datafusion / parquet (0.901x ➖, 3↑ 0↓)
duckdb / vortex-file-compressed (0.981x ➖, 0↑ 0↓)
duckdb / vortex-compact (1.005x ➖, 0↑ 0↓)
duckdb / parquet (0.953x ➖, 0↑ 0↓)
Full attributed analysis
|
Benchmarks: Clickbench on NVMEVerdict: No clear signal (low confidence) datafusion / vortex-file-compressed (0.994x ➖, 0↑ 0↓)
datafusion / parquet (0.996x ➖, 0↑ 0↓)
duckdb / vortex-file-compressed (1.055x ➖, 1↑ 9↓)
duckdb / parquet (1.001x ➖, 0↑ 0↓)
duckdb / duckdb (0.986x ➖, 4↑ 0↓)
Full attributed analysis
|
File Sizes: Clickbench on NVMEFile Size Changes (101 files changed, -33.6% overall, 0↑ 101↓)
Totals:
|
Benchmarks: CompressionVortex (geomean): 1.004x ➖ unknown / unknown (0.996x ➖, 1↑ 2↓)
|
The benchmark matrix was copy-pasted across bench.yml, bench-pr.yml, and sql-benchmarks.yml with drift between copies. Move the single source of truth into sql-benchmarks.yml's default input and derive lance targets from the `mode` parameter at runtime via a "Resolve targets" step (lance is added for clickbench/tpch in non-PR modes). Also syncs the default matrix with develop's version (adds local_dir to statpopgen, removes stale scale_factor/iterations from fineweb and S3 entries, adds vortex-compact to clickbench). Signed-off-by: Alexander Droste <alex@spiraldb.com> Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> Signed-off-by: Alexander Droste <alexander.droste@protonmail.com>
`auto` disables color in CI (no TTY), making log output harder to read. All other workflows already use `always`. Signed-off-by: Alexander Droste <alex@spiraldb.com> Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> Signed-off-by: Alexander Droste <alexander.droste@protonmail.com>
The R2 credentials (AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY, AWS_REGION, AWS_ENDPOINT_URL) were duplicated across restore/persist steps in run-fuzzer.yml (2x), minimize_fuzz_corpus_workflow.yml (2x), and fuzz-coverage.yml (1x). Move them to job-level env blocks. Signed-off-by: Alexander Droste <alex@spiraldb.com> Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> Signed-off-by: Alexander Droste <alexander.droste@protonmail.com>
eae44b0 to
770a6f2
Compare
|
@joseph-isaacs @AdamGS Added two tables to show the diffs for on pr and post merge, before and after. |
|
Triggered another full bench run. |
The matrix consolidation in #7448 dropped `extra_data_formats: "vortex-compact"` from the clickbench entry. This meant PR clickbench no longer generates vortex-compact data, so file size comparisons in PR comments lost vortex-compact coverage. Restore the field so `data-gen` produces vortex-compact files for file size tracking without adding it as a benchmark target on PRs. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> Signed-off-by: Alexander Droste <alexander.droste@protonmail.com>
…7452) ## Summary - The matrix consolidation in #7448 dropped `extra_data_formats: "vortex-compact"` from the clickbench default matrix entry - This meant PR clickbench no longer generates vortex-compact data, so file size comparisons in PR comments lost vortex-compact coverage - Restores the field so `data-gen` produces vortex-compact files for file size tracking without adding it as a benchmark target on PRs Signed-off-by: Alexander Droste <alexander.droste@protonmail.com>
Summary
Audit and cleanup of
.github/CI workflows — fixes bugs, removes dead code, deduplicates config.Changes (one commit each)
run-fuzzer.yml— restore appended-${{ inputs.extra_features }}but persist did not, so previously-saved corpora were never restoreddays-before-pr-staleis 14Install Sweep/Timestamp Cachesteps fromsetup-rustaction — they gate on undeclaredinputs.timestampso never run--bininstead of--packageinbench-pr.ymlbuild step to matchbench.ymlbench.ymlcommit-metadata 120m → 10m,docs.ymldeploy 120m → 10m,stale.ymladd missing timeoutsql-benchmarks.ymldefault input, derive lance targets frommodeat runtime, sync matrix with develop (addslocal_dirto statpopgen, drops stalescale_factor/iterationsfrom fineweb/S3 entries, addsvortex-compactto clickbench)CARGO_TERM_COLOR: alwaysinci.yml—autodisables color without a TTY, all other workflows already usealwaysrun-fuzzer.yml,minimize_fuzz_corpus_workflow.yml,fuzz-coverage.yml— removes 5 duplicate env blocksbefore and after for post merge, and on pr: